// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.google.gson.internal.bind; import com.google.gson.Gson; import com.google.gson.TypeAdapter; import com.google.gson.reflect.TypeToken; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; final class m extends TypeAdapter { private final Gson a; private final TypeAdapter b; private final Type c; m(Gson gson, TypeAdapter typeadapter, Type type) { a = gson; b = typeadapter; c = type; } private Type a(Type type, Object obj) { if (obj != null && (type == java/lang/Object || (type instanceof TypeVariable) || (type instanceof Class))) { type = obj.getClass(); } return type; } public Object read(JsonReader jsonreader) { return b.read(jsonreader); } public void write(JsonWriter jsonwriter, Object obj) { TypeAdapter typeadapter; typeadapter = b; Type type = a(c, obj); if (type != c) { typeadapter = a.getAdapter(TypeToken.get(type)); break MISSING_BLOCK_LABEL_38; } _L1: typeadapter.write(jsonwriter, obj); return; if ((typeadapter instanceof ReflectiveTypeAdapterFactory.Adapter) && !(b instanceof ReflectiveTypeAdapterFactory.Adapter)) { typeadapter = b; } goto _L1 } }